import { createApp } from 'vue';
import pinia from '/@/stores/index';
import App from '/@/App.vue';
import router from '/@/router';
import { directive } from '/@/directive/index';
import { i18n } from '/@/i18n/index';
import other from '/@/utils/other';
import ExForm from "/@/components/fromDesigner"; //表单设计器
import "/@/components/fromDesigner/theme/src/index.scss";//表单设计器样式

import 'viewerjs/dist/viewer.css'
import VueViewer from 'v-viewer'

import '/@/theme/globalFontSize.scss';
import ElementPlus from 'element-plus';
import '/@/theme/index.scss';
import VueGridLayout from 'vue-grid-layout';
import explainBox from '/@/components/explainBox.vue';
import datePickerBox from '/@/components/datePickerBox.vue';
import alertBox from '/@/components/alertBox.vue';
const app = createApp(App);

// 全局注册公共组件
// 注册全局组件
app.component('ExplainBox', explainBox);
app.component('DatePickerBox', datePickerBox);
app.component('AlertBox', alertBox);

directive(app);
other.elSvg(app)

app.use(pinia).use(router).use(ElementPlus).use(i18n).use(VueGridLayout).use(VueViewer).use(ExForm).mount('#app');
